HAL XSPI callback functions migration ¶
This section provides information about the HAL XSPI callback functions migration.
Callback functions in non-blocking modes ¶
HAL XSPI error callback ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_XSPI_ErrorCallback(XSPI_HandleTypeDef *hxspi);
|
HAL_XSPI_ErrorCallback(hal_xspi_handle_t *hxspi);
|
HAL XSPI abort completed callback ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_XSPI_AbortCpltCallback(XSPI_HandleTypeDef *hxspi);
|
HAL_XSPI_AbortCpltCallback(hal_xspi_handle_t *hxspi);
|
HAL XSPI FIFO threshold callback ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_XSPI_FifoThresholdCallback(XSPI_HandleTypeDef *hxspi);
|
HAL_XSPI_FifoThresholdCallback(hal_xspi_handle_t *hxspi);
|
HAL XSPI indirect mode callback functions ¶
HAL XSPI command completed callback ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_XSPI_CmdCpltCallback(XSPI_HandleTypeDef *hxspi);
|
HAL_XSPI_CmdCpltCallback(hal_xspi_handle_t *hxspi);
|
HAL XSPI RX transfer completed callback ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_XSPI_RxCpltCallback(XSPI_HandleTypeDef *hxspi);
|
HAL_XSPI_RxCpltCallback(hal_xspi_handle_t *hxspi);
|
HAL XSPI TX transfer completed callback ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_XSPI_TxCpltCallback(XSPI_HandleTypeDef *hxspi);
|
HAL_XSPI_TxCpltCallback(hal_xspi_handle_t *hxspi);
|
HAL XSPI RX half completed callback ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_XSPI_RxHalfCpltCallback(XSPI_HandleTypeDef *hxspi);
|
HAL_XSPI_RxHalfCpltCallback(hal_xspi_handle_t *hxspi);
|
HAL XSPI TX half completed callback ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_XSPI_TxHalfCpltCallback(XSPI_HandleTypeDef *hxspi);
|
HAL_XSPI_TxHalfCpltCallback(hal_xspi_handle_t *hxspi);
|
HAL XSPI status flag polling mode function ¶
HAL XSPI status match callback ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_XSPI_StatusMatchCallback(XSPI_HandleTypeDef *hxspi);
|
HAL_XSPI_StatusMatchCallback(hal_xspi_handle_t *hxspi);
|
HAL XSPI memory-mapped mode function ¶
HAL XSPI timeout callback ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_XSPI_TimeOutCallback(XSPI_HandleTypeDef *hxspi);
|
Removed from HAL2.
The timeout event is now notified using the
Note Error code can be retrieved from HAL_XSPI_GetLastErrorCodes(). |
HAL XSPI register/unregister callback functions ¶
HAL XSPI register callback ¶
In HAL1, the function
HAL_XSPI_RegisterCallback()
is used to register various XSPI callbacks through a single function with a specific callback ID, whereas, in HAL2, distinct functions are available to register each specific XSPI callback.
|
Function |
HAL 1 |
HAL 2 |
|---|---|---|
|
Tx Complete Callback |
HAL_XSPI_RegisterCallback(&hspi,
HAL_XSPI_TX_CPLT_CB_ID,
USER_XSPI_TxCpltCallback)
|
HAL_XSPI_RegisterTxCpltCallback(&hspi,
USER_XSPI_TxCpltCallback);
|
|
Rx Complete Callback |
HAL_XSPI_RegisterCallback(&hspi,
HAL_XSPI_RX_CPLT_CB_ID,
USER_XSPI_RxCpltCallback)
|
HAL_XSPI_RegisterRxCpltCallback(&hspi,
USER_XSPI_RxCpltCallback);
|
|
Tx Half Complete Callback |
HAL_XSPI_RegisterCallback(&hspi,
HAL_XSPI_TX_HALF_CPLT_CB_ID,
USER_XSPI_TxHalfCpltCallback);
|
HAL_XSPI_RegisterRxCpltCallback(&hspi,
USER_XSPI_TxHalfCpltCallback);
|
|
Rx Half Complete Callback |
HAL_XSPI_RegisterCallback(&hspi,
HAL_XSPI_RX_HALF_CPLT_CB_ID,
USER_XSPI_RxHalfCpltCallback);
|
HAL_XSPI_RegisterRxCpltCallback(&hspi,
USER_XSPI_RxHalfCpltCallback);
|
|
XSPI error callback |
HAL_XSPI_RegisterCallback(&hspi,
HAL_XSPI_ERROR_CB_ID,
USER_XSPI_ErrorCallback);
|
HAL_XSPI_RegisterErrorCallback(&hspi,
USER_XSPI_ErrorCallback);
|
|
XSPI abort callback |
HAL_XSPI_RegisterCallback(&hspi,
HAL_XSPI_ABORT_CB_ID,
USER_XSPI_AbortCpltCallback);
|
HAL_XSPI_RegisterAbortCpltCallback(&hspi,
USER_XSPI_AbortCpltCallback);
|
|
XSPI FIFO Threshold callback |
HAL_XSPI_RegisterCallback(&hspi,
HAL_XSPI_FIFO_THRESHOLD_CB_ID,
USER_XSPI_FIFO_THRESHOLD_CpltCallback);
|
HAL_XSPI_RegisterFifoThresholdCallback(&hspi,
USER_XSPI_FIFO_THRESHOLD_CpltCallback);
|
|
XSPI Command complete callback |
HAL_XSPI_RegisterCallback(&hspi,
HAL_XSPI_CMD_CPLT_CB_ID,
USER_XSPI_Cmd_CpltCallback);
|
HAL_XSPI_RegisterCmdCpltCallback(&hspi,
USER_XSPI_Cmd_CpltCallback);
|
|
XSPI Status match callback |
HAL_XSPI_RegisterCallback(&hspi,
HAL_XSPI_STATUS_MATCH_CB_ID,
USER_XSPI_Status_Match_CpltCallback);
|
HAL_XSPI_RegisterStatusMatchCallback(&hspi,
USER_XSPI_Status_Match_CpltCallback);
|
|
XSPI Timeout callback |
HAL_XSPI_RegisterCallback(&hspi,
HAL_XSPI_TIMEOUT_CB_ID,
USER_XSPI_timeout_CpltCallback);
|
HAL_XSPI_RegisterErrorCallback(&hspi,
USER_XSPI_timeout_CpltCallback);
|
HAL XSPI unregister callback ¶
In HAL2, the unregister callback API has been removed. Instead, callbacks can be managed by re-registering the default HAL XSPI weak callbacks as needed.
|
Function |
HAL 1 |
HAL 2 |
|---|---|---|
|
Tx Complete Callback |
HAL_XSPI_UnRegisterCallback(&hspi,
HAL_XSPI_TX_CPLT_CB_ID)
|
HAL_XSPI_RegisterTxCpltCallback(&hspi,
HAL_XSPI_TxCpltCallback);
|
|
Rx Complete Callback |
HAL_XSPI_UnRegisterCallback(&hspi,
HAL_XSPI_RX_CPLT_CB_ID)
|
HAL_XSPI_RegisterRxCpltCallback(&hspi,
HAL_XSPI_RxCpltCallback);
|
|
Tx Half Complete Callback |
HAL_XSPI_UnRegisterCallback(&hspi,
HAL_XSPI_TX_HALF_CPLT_CB_ID);
|
HAL_XSPI_RegisterRxCpltCallback(&hspi,
HAL_XSPI_TxHalfCpltCallback);
|
|
Rx Half Complete Callback |
HAL_XSPI_UnRegisterCallback(&hspi,
HAL_XSPI_RX_HALF_CPLT_CB_ID);
|
HAL_XSPI_RegisterRxCpltCallback(&hspi,
HAL_XSPI_RxHalfCpltCallback);
|
|
XSPI error callback |
HAL_XSPI_UnRegisterCallback(&hspi,
HAL_XSPI_ERROR_CB_ID);
|
HAL_XSPI_RegisterErrorCallback(&hspi,
HAL_XSPI_ErrorCallback);
|
|
XSPI abort callback |
HAL_XSPI_UnRegisterCallback(&hspi,
HAL_XSPI_ABORT_CB_ID);
|
HAL_XSPI_RegisterAbortCpltCallback(&hspi,
HAL_XSPI_AbortCpltCallback);
|
|
XSPI FIFO Threshold callback |
HAL_XSPI_UnRegisterCallback(&hspi,
HAL_XSPI_FIFO_THRESHOLD_CB_ID);
|
HAL_XSPI_RegisterFifoThresholdCallback(&hspi,
HAL_XSPI_FifoThresholdCallback);
|
|
XSPI Command complete callback |
HAL_XSPI_UnRegisterCallback(&hspi,
HAL_XSPI_CMD_CPLT_CB_ID);
|
HAL_XSPI_RegisterCmdCpltCallback(&hspi,
HAL_XSPI_CmdCpltCallback);
|
|
XSPI Status match callback |
HAL_XSPI_UnRegisterCallback(&hspi,
HAL_XSPI_STATUS_MATCH_CB_ID);
|
HAL_XSPI_RegisterStatusMatchCallback(&hspi,
HAL_XSPI_StatusMatchCallback);
|
|
XSPI Timeout callback |
HAL_XSPI_UnRegisterCallback(&hspi,
HAL_XSPI_TIMEOUT_CB_ID);
|
HAL_XSPI_RegisterErrorCallback(&hspi,
HAL_XSPI_ErrorCallback);
|
Related concept: Individual callback registration APIs replace global register and unregister functions